package com.zy.explore.idempotent.infrastructure.exception;

/**
 * description 自定义状态码
 *
 * @author 中国印
 * @date 2021年07月06日20时17分07秒
 */
public interface StatusCode {

    /**
     * 获取状态码
     *
     * @return 返回状态码
     */
    int getCode();

    /**
     * 获取状态码对应的描述信息
     *
     * @return 返回描述信息
     */
    String getMessage();

    /**
     * 默认方法
     *
     * @return 返回异常对象
     */
    default BaseException toException() {
        return new BaseException(this.getCode(), this.getMessage());
    }

}
